home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Amiga Plus 2004 #6
/
Amiga Plus CD - 2004 - No. 06.iso
/
AmiSoft
/
Hard
/
drivr
/
ArakAttack.lha
/
ArakAttack
/
ArakAttack.install
next >
Wrap
Text File
|
2004-05-03
|
28KB
|
774 lines
; $VER: ArakAttack USB Driver Install V1.12 (08.01.2004).
; Install script for ArakAttack (Workbench 2.0 or higher)
(delopts "force" "askuser" "nofail")
(USER 2)
;#########################################################################
(set #home @execute-dir)
(set #InstallDataDir "InstallData")
(set #DevsDir (EXPANDPATH "Devs:USBHardware"))
(set #PrefsDir (EXPANDPATH "sys:prefs"))
(set #CatalogsDir (EXPANDPATH "Locale:Catalogs"))
(set #HelpDir (EXPANDPATH "Help:"))
(set #CDir (EXPANDPATH "c:"))
(SET #InstallerVersion 44)
(SET #InstallerRevision 10)
(SET #DoHIDClass 1) ; Don't install HIDClassPatch
(set #Amithlon 0) ; No Amithlon
(set #Morphos 0) ; No MorphOS
(set #Dummy (/ (getversion "amithlon.device" (Resident)) 65536))
(if (>= #Dummy 1) (set #Amithlon 2))
;--- Destination path on MorphOS is different, so we adapt in such case!
(if (exists "MOSSYS:Devs/USBHardware" (NoReq))
(
(set #DevsDir "MOSSYS:Devs/USBHardware")
(set #Morphos 1)
))
;#########################################################################
; Error cleanup code.
;#########################################################################
(onerror
(
(if (> @ioerr 0)
(message (cat #ioerror "\n\n ERROR CODE: " @ioerr))
)
)
)
(effect "lower_right" "radial" $5098c0 $5098c0)
(showmedia "ArakUSBLogo" "ArakUSB.ilbm" "upper_left" "none" 0)
;#########################################################################
; Is the install data drawer compressed?
;#########################################################################
(set #cleanupinst 0)
(if (exists "InstallData.lha")
(
(if (exists "C:Lha")
(
(run "Lha -q x InstallData.lha T:" (safe))
) (
(run "LhEX -qfw=T: x InstallData.lha" (safe))
)
)
(set #InstallDataDir "T:InstallData")
(set #cleanupinst 1)
)
)
;#########################################################################
; Is there a keyfile on disk?
;#########################################################################
(if (<> 0
(OR
(exists "keyfile:AmithlonUSB.key" (QUIET))
(exists "keyfiles:AmithlonUSB.key" (QUIET))
(exists "devs:AmithlonUSB.key" (QUIET))
(exists "s:AmithlonUSB.key" (QUIET))
(exists "c:AmithlonUSB.key" (QUIET))
(exists "l:AmithlonUSB.key" (QUIET))
(exists "libs:AmithlonUSB.key" (QUIET))
(exists "sys:AmithlonUSB.key" (QUIET))
(exists "env:AmithlonUSB.key" (QUIET))
(exists "envarc:AmithlonUSB.key" (QUIET))
(exists "rexx:AmithlonUSB.key" (QUIET))
(exists "fonts:AmithlonUSB.key" (QUIET))
(exists "locale:AmithlonUSB.key" (QUIET))
(exists "keyfile:OpenUSB.key" (QUIET))
(exists "keyfiles:OpenUSB.key" (QUIET))
(exists "devs:OpenUSB.key" (QUIET))
(exists "s:OpenUSB.key" (QUIET))
(exists "c:OpenUSB.key" (QUIET))
(exists "l:OpenUSB.key" (QUIET))
(exists "libs:OpenUSB.key" (QUIET))
(exists "sys:OpenUSB.key" (QUIET))
(exists "env:OpenUSB.key" (QUIET))
(exists "envarc:OpenUSB.key" (QUIET))
(exists "rexx:OpenUSB.key" (QUIET))
(exists "fonts:OpenUSB.key" (QUIET))
(exists "locale:OpenUSB.key" (QUIET))
)
)
(
(SET #DefBinary 1)
))
;#########################################################################
; Language english
;#########################################################################
(if (= @language "english")
(
(set #DefLanguage 1)
(set #ioerror "\n\nAn error occured during the installation!\n\n")
(set #bad-kick "You must have at least Workbench 2.0+")
(set #bad-installer
(CAT "You have an old version of the program 'Installer' installed!"
"\n\nThe installation procedure needs at least Installer %ld.%ld.\n\n"
"Please check your configuration!\n"
)
)
(set #App-MainMode "Please choose installer mode:")
(set #App-Install "Install")
(set #App-DeInstall "Deinstall")
(set #App-DeinstallMsg
(cat "\n\n"
"ArakAttack will be deinstalled!\n\n"
"All ArakAttack releated files will be removed from harddisk.\n\n"
"Please note that the Poseidon installation is not effected by deinstalling ArakAttack!"
)
)
(set #Deinstall-Done "\nArakAttack has been removed successfully.")
(set #App-InstallMsg
(cat "\n\n"
("Welcome to the installation program for the\nArakAttack USB driver V%d.%d\n\n"
(getversion (tackon #InstallDataDir "1")))
"by Guido Mersmann <geit@gmx.de>\n\n"
"Please read the documentation (HELP:) for further information!"
)
)
(set #App-Full "Full Version (requires keyfile)")
(set #App-Demo "Demo Version")
(set #App-Keyfile "Which version do you want to install?")
(set #App-Keyfile-help
(cat "\n"
"The full version requires an AmithlonUSB or OpenUSB keyfile!\n\n"
"Please make sure the keyfile is installed within one of these drawers:"
" 's:', 'l:', 'c:', 'devs:', 'keyfile:', 'keyfiles:'\n\n"
"The demo version is time limited and much slower compared to the"
" full version!\n"
)
)
(set #App-Language "Which languages should be installed?")
(set #App-Language-help
(cat "\nThe Amiga can be operated in many different"
" languages."
"To reduce the amount of space consumed by the"
" language files, you can select to have only the"
" files of specific languages copied.\n\n"
"Simply check the boxes of the languages you wish"
" to have available on your system.\n\n"
)
)
(SET #App-PoseidonInst
(cat "\nA Poseidon installation was found!\n\n\n"
"Do you want to set-up a new configuration?\n\n"
"Please note that all you prior configuration get's"
" lost if you select 'Set-Up'"
)
)
(SET #App-NoPos "Don't Set-Up")
(SET #App-DoPos "Set-Up")
(SET #App-PosSetup
(cat "\nPoseidon will now automaticaly search for any USB controller hardware.\n\n"
" This may take some time. To speed up the auto detection redurce the"
" amount of connected USB devices.\n\n"
"If you're using an USB mouse and/or keyboard right now, then you'll"
" notice these devices aren't responding during setup. This is no system crash"
" or freeze! Just wait for the installation to be finished!\n\n"
)
)
(SET #App-PoseidonInput
(cat "\n'PSDLoadModule' line found within the file 's:startup-sequence'!\n\n\n"
"This command is installing an input.device replacement provided by Poseidon"
" which is causing trouble when used on Amithlon.\n\n"
"Please remove this line by hand and install the included HIDClassPatch.\n\n"
"For further information consult the ArakAttack and Poseidon documentation!"
)
)
(SET #App-InputPatch
(cat "\nThis packet provides a little patch for the HIDClass of Poseidon.\n\n"
"This patch allows to use an USB keyboard without restrictions and without"
" replacing the whole 'input.device'.\n\n"
"Without the new input device and this patch a connected keyboard is not 100% compatible."
" You also must not install this patch together with the updated input.device included in the"
" Poseidon archive. Normaly the small patch is doing the job and replacing the input device is"
" wasting only memory.\n\n"
"For further information consult the ArakAttack and Poseidon documentation!"
)
)
(SET #App-DoHID "Install")
(SET #App-NoHID "Skip This")
(SET #Startup-prompt "\n\nSome lines need to be added to S:User-Startup:\n\n%s")
(SET #StartupRemove-prompt "\nRemove %s lines within your user-startup?")
(set #Install-Done
(cat "\nArakAttack has been installed!\n\n"
"If there are any questions consult the included manual (HELP:) and especialy the FAQ section first.\n\n"
"There also exist two internet groups for talking about USB:\n\n"
"'highway_usb@yahoogroups.com' is the best place, because here you'll find all usb related developers and users.\n\n"
"'amithlonusb@yahoogroups.com' is open for any amithlon usb user, but here only amithlon specific problems can be solved."
)
)
)
)
;#########################################################################
; Language german
;#########################################################################
(if (= @language "deutsch")
(
(set #DefLanguage 2)
(set #ioerror "\n\nWährend der Installation ist folgender Fehler aufgetreten!\n\n")
(set #bad-installer
(CAT "Achtung! Es ist eine alte Version des Programmes 'Installer' installiert"
"\n\nDie Installation benötigt mindestens Installer %ld.%ld.\n\n"
"Bitte überprüfen Sie Ihre Konfiguration!\n"
)
)
(set #App-InstallMsg
(cat "\n\n"
("Willkommen zur Installation vom\nArakAttack USB Treiber V%d.%d\n\n"
(getversion (tackon #InstallDataDir "1")))
"von Guido Mersmann <geit@gmx.de>\n\n"
"Bitte lesen Sie die Anleitung (HELP:) für weitere Informationen!"
)
)
(set #App-MainMode "Bitte wählen Sie den Installationsmodus:")
(set #App-Install "Installieren")
(set #App-DeInstall "Deinstallieren")
(set #App-DeinstallMsg
(cat "\n\n"
"ArakAttack wird jetzt entfernt!\n\n"
"Alle Dateien die zu ArakAttack gehören werden von der Festplatte gelöscht.\n\n"
"Achtung: Die Poseidoninstallation bleibt vollständig bestehen! Das Deinstallieren"
" von ArakAttack hat keinen Einfluss auf Poseidon!"
)
)
(set #Deinstall-Done "\nArakAttack wurde erfolgreich entfernt.")
(set #App-Full "Vollversion (Benötigt Keyfile)")
(set #App-Demo "Demoversion")
(set #App-Keyfile "Welche Version wollen Sie installieren?")
(set #App-Keyfile-help
(cat "\n"
"Die Vollversion benötigt ein AmithlonUSB or OpenUSB keyfile!\n\n"
"Bitte stellen Sie sicher, dass das Keyfile in einem der"
" folgenden Verzeichnisse installiert ist, bevor sie fortfahren:"
" 's:', 'l:', 'c:', 'devs:', 'keyfile:' oder 'keyfiles:'\n\n"
"Die Demoversion ist zeitlich beschränkt und deutlich langsammer"
" als die Vollversion\n"
)
)
(SET #App-Language "Welche Sprachen sollen installiert werden ?")
(set #App-Language-help
(cat "\nDer Amiga kann in vielen verschiedenen Sprachen"
" arbeiten. Um Plattenkapazität zu sparen können Sie"
" nur die Sprachen anwählen, die sie benötigen"
" Haken Sie also einfach die Sprachen ab, die Sie"
" Ihrem System zugänglich machen wollen."
)
)
(SET #App-PoseidonInst
(cat "\nEs wurde eine Poseidoninstallation gefunden!\n\n\n"
"Wollen Sie eine neue Konfiguration erstellen?\n\n"
"Beachten Sie, dass dann ihre bisherigen Poseidoneinstellungen verloren gehen,"
" wenn Sie sich für eine Neuerstellung entscheiden."
)
)
(SET #App-NoPos "Nicht Erstellen")
(SET #App-DoPos "Erstellen")
(SET #App-PosSetup
(cat "\nPoseidon wird jetzt automatisch nach den vorhandenen USB Kontrollern suchen.\n\n"
" Dieser Vorgang kann einige Zeit dauern. Um den Vorgang zu beschleunigen können"
" Sie jetzt alle unbenutzten Geräte abziehen.\n\n"
"Wenn Sie eine USB Maus und/oder Tastatur verwenden, dann werden Sie feststellen,"
" dass diese Geräte zeitweilig nicht reagieren. Das ist kein Absturz oder Einfrieren des Systems!"
" Warten Sie einfach ab, bis die Installation abgeschlossen ist.\n\n"
)
)
(SET #App-PoseidonInput
(cat "\n'PSDLoadModule' Kommando in der Datei 's:startup-sequence' gefunden!\n\n\n"
"Dieses Kommando aus dem Poseidionpaket installiert einen input.device Ersatz"
" der unter Amithlon Probleme macht.\n\n"
"Bitte entfernen Sie die Zeile von Hand und installieren Sie den HIDClassPatch im nächsten Abschnitt.\n\n"
"Weitere Informationen finden sie in der ArakAttack- und in der Poseidonanleitung!"
)
)
(SET #App-InputPatch
(cat "\nDieses Paket enthält einen kleinen Patch für die HIDClass von Poseidon.\n\n"
"Dieser Patch erlaubt es eine USB Tastatur ohne Einschränkungen und vor allen Dingen ohne"
" Ersetzen des kompletten 'input.device' zu benutzen.\n\n"
"Ohne das neue 'input.device' aus dem Poseidonarchiv oder diesen Patch ist die Tastatur nicht 100% kompatibel."
" Sie sollten auf keinen Fall beides zusammen installieren."
" Der kleine Patch sollte alle Inkompatiblitäten beseitigen und ein Ersetzen des"
" original Devices ist nicht nötig.\n\n"
"Weitere Informationen finden sie in der ArakAttack- und in der Poseidonanleitung!"
)
)
(SET #App-DoHID "Installieren")
(SET #App-NoHID "Überspringen")
(SET #Startup-prompt "\n\nJetzt werden folgende Eintragungen in die S:User-Startup gemacht:\n\n%s")
(SET #StartupRemove-prompt "\n\nDie zu %s gehörenden Einträge in der User-startup werden gelöscht!")
(set #Install-Done
(cat "\nArakAttack wurde erfolgreich installiert!\n\n"
"Wenn Sie Fragen haben, dann schauen Sie bitte zuerst in die Anleitung (HELP:) und"
" speziell in das Kapitel 'Fragen und Antworten'!\n\n"
"Es existieren auch zwei Internetgruppen zum Thema Amiga und USB:\n\n"
"'highway_usb@yahoogroups.com' ist der beste Platz, weil hier"
" alle USB Autoren und Benutzer aufeinandertreffen.\n\n"
"'amithlonusb@yahoogroups.com' ist offen für Amithlonnutzer. Hier können"
" aber nur Amithlon spezifische Fragen beantwortet werden!"
)
)
)
)
;#########################################################################
; Check for the latest installer version
;#########################################################################
(IF (< (/ (getversion) 65536) 37)
(
(abort #bad-kick)
)
)
; Check installer Version
(if (< @installer-version (+ (* #InstallerVersion 65536) #InstallerRevision))
(
(abort (#bad-installer #InstallerVersion #InstallerRevision))
)
) ;if
;#########################################################################
(message #App-InstallMsg)
;-------------------------------------------------------------------------
; Ask for installing or deinstalling
;-------------------------------------------------------------------------
(trace)
(set #InstallerMode
(ASKCHOICE
(PROMPT #App-MainMode)
(HELP @askchoice-help)
(CHOICES
(#App-Install #ApplicationName)
(#App-Deinstall #ApplicationName)
)
(back (retrace))
(default #InstallerMode)
)
)
;#########################################################################
(IF (= #InstallerMode "0")(
;-------------------------------------------------------------------------
; Ask for installing the Full or Demo Version
;-------------------------------------------------------------------------
(trace)
(set #Binary
(ASKCHOICE
(prompt #App-Keyfile)
(HELP #App-Keyfile-help)
(default #DefBinary)
(choices #App-Demo #App-Full)
(back (retrace))
)
)
(SET #DefBinary #Binary)
;--------------------------------------------------------------------------------------------------------------------
; Ask catalog and documentation language
;--------------------------------------------------------------------------------------------------------------------
(trace)
(SET #Language (ASKOPTIONS
(PROMPT #App-Language)
(HELP #App-Language-help)
(CHOICES
"English"
"Deutsch"
)
(DEFAULT #DefLanguage)
(back (retrace))
)
)
(SET #DefLanguage #Language)
;--------------------------------------------------------------------------------------------------------------------
; Ask for making a poseidon configuration
;--------------------------------------------------------------------------------------------------------------------
(trace)
(if (exists "libs:poseidon.library"))
(
(if (exists "c:AddUSBHardware"))
(
(if (exists "c:AddUSBClasses"))
(
(if (exists (tackon #PrefsDir "Trident")))
(
(set #DoPoseidonConfig
(askbool
(prompt #App-PoseidonInst)
(help @askbool-help)
(default 1)
(choices #App-NoPos #App-DoPos)
(back (retrace))
)
)
)
)
)
)
;--------------------------------------------------------------------------------------------------------------------
; Ask for installing the HIDClassPatch
;--------------------------------------------------------------------------------------------------------------------
(trace)
(IF #Amithlon
(
(if (= 0 (run "Search S:Startup-Sequence PATTERN PSDLoadModule QUIET QUICK" (safe)))
(
(Message #App-PoseidonInput (back (retrace)))
))
(SET #DoHIDClass
(askbool
(prompt #App-InputPatch)
(help @askbool-help)
(default #DoHIDClass)
(choices #App-NoHID #App-DoHID)
(back (retrace))
)
)
))
(set #Binary (+ #Amithlon #Binary))
;--------------------------------------------------------------------------------------------------------------------
; Remove obsolete stuff!
;--------------------------------------------------------------------------------------------------------------------
(delete (Tackon #CatalogsDir "deutsch/OpenUSB.catalog") (optional FORCE) (INFOS))
(delete (Tackon #CatalogsDir "deutsch/AmithlonUSB.catalog") (optional FORCE) (INFOS))
(delete (Tackon #HelpDir "english/OpenUSB.guide") (optional FORCE) (INFOS))
(delete (Tackon #HelpDir "deutsch/OpenUSB.guide") (optional FORCE) (INFOS))
(delete (Tackon #HelpDir "english/AmithlonUSB.guide") (optional FORCE) (INFOS))
(delete (Tackon #HelpDir "deutsch/AmithlonUSB.guide") (optional FORCE) (INFOS))
;--------------------------------------------------------------------------------------------------------------------
; Remove old Stuff
;--------------------------------------------------------------------------------------------------------------------
(delete (Tackon #CatalogsDir "deutsch/ArakAttack.catalog") (optional FORCE) (INFOS))
(delete (Tackon #HelpDir "english/ArakAttack.guide") (optional FORCE) (INFOS))
(delete (Tackon #HelpDir "deutsch/ArakAttack.guide") (optional FORCE) (INFOS))
;--------------------------------------------------------------------------------------------------------------------
; Copy the files.
;--------------------------------------------------------------------------------------------------------------------
(makedir "Devs:USBHardware") ; just in case the directory does not exist.
(complete 0)
(complete 10)
(COPYFILES
(SOURCE (CAT #InstallDataDir "/" (SELECT #Binary "2d" "2" "1d" "1")))
(DEST #DevsDir )
(newname (SELECT #Binary "OpenUSB.device" "OpenUSB.device" "AmithlonUSB.device" "AmithlonUSB.device"))
(HELP @copyfiles-help)
(OPTIONAL <force>)
(ALL)
)
(complete 20)
(COPYFILES
(SOURCE (CAT #InstallDataDir "/10"))
(DEST #PrefsDir )
(newname (SELECT #Binary "OpenUSB" "OpenUSB" "AmithlonUSB" "AmithlonUSB"))
(HELP @copyfiles-help)
(OPTIONAL <force>)
(ALL)
(if (not (exists (Tackon #PrefsDir (SELECT #Binary "OpenUSB.info" "OpenUSB.info" "AmithlonUSB.info" "AmithlonUSB.info")) )) (infos))
(noposition)
)
;--------------------------------------------------------------------------------------------------------------------
; Now we kill all files we did not copy! Just in case there is OpenUSB Stuff on disk during AmithlonUSB installation
;--------------------------------------------------------------------------------------------------------------------
(complete 30)
(delete (Tackon #DevsDir (SELECT #Binary "AmithlonUSB.device" "AmithlonUSB.device" "OpenUSB.device" "OpenUSB.device")) (optional FORCE) (Infos))
(complete 40)
(delete (Tackon #PrefsDir (SELECT #Binary "AmithlonUSB" "AmithlonUSB" "OpenUSB" "OpenUSB")) (optional FORCE) (infos))
;--------------------------------------------------------------------------------------------------------------------
; copy catalogs and documentation by language
;--------------------------------------------------------------------------------------------------------------------
(set n 0)
(while (< n 2)
(SET #Dummy (SELECT n "english" "deutsch"))
(
(IF (IN #Language n)
(
(MAKEDIR (TACKON #CatalogsDir #Dummy))
(COPYFILES
(SOURCE (cat #InstallDataDir "/catalogs/" #Dummy))
(DEST (TACKON #CatalogsDir #Dummy))
(HELP @copyfiles-help)
(ALL)
)
(MAKEDIR (TACKON #HelpDir #Dummy))
(COPYFILES
(SOURCE (cat #InstallDataDir "/help/" #Dummy))
(DEST (TACKON #HelpDir #Dummy))
(HELP @copyfiles-help)
(ALL)
)
)
)
)
(SET n (+ n 1))
)
;--------------------------------------------------------------------------------------------------------------------
; Run setup to finalize installation
;--------------------------------------------------------------------------------------------------------------------
(complete 50)
(run (tackon #InstallDataDir "10 NOGUI"))
;--------------------------------------------------------------------------------------------------------------------
; Setup Poseidon installation
;--------------------------------------------------------------------------------------------------------------------
(complete 60)
(if (= "0" #DoPoseidonConfig)
(
(Message #App-PosSetup)
(complete 65)
(run "c:AddUSBHardware REMOVE ALL")
(complete 66)
(run (tackon #PrefsDir "Trident NOGUI SAVE"))
(complete 70)
(Delete "ENV:PSDStackLoader" "ENVARC:PSDStackloader")
(run "Echo >T:AddUSBHW \"FailAt 21\"")
(run
(cat
"List >>T:AddUSBHW FILES " (TACKON #DevsDir "(AmithlonUSB|OpenUSB).device")
" LFORMAT \"c:AddUSBHardware %p%n unit 0 ALL\""
)
)
(complete 75)
(run "c:execute T:AddUSBHW")
(delete "T:AddUSBHW")
(complete 78)
(run "c:AddUSBClasses")
(complete 80)
(run (tackon #PrefsDir "Trident NOGUI SAVE"))
(complete 90)
))
;--------------------------------------------------------------------------------------------------------------------
; Setup HIDClassPatch
;--------------------------------------------------------------------------------------------------------------------
(if (= "0" #DoHIDClass)
(
(SET #dummy (TACKON #CDir "HIDClassPatch"))
(COPYFILES
(SOURCE (cat #InstallDataDir "/c/HIDClassPatch"))
(DEST #CDir)
(HELP @copyfiles-help)
(ALL)
)
(SET #dummy (CAT "run <>NIL: " #dummy " <>NIL:"))
(STARTUP @app-name
(HELP @startup-help)
(PROMPT (#startup-prompt #dummy))
(COMMAND #dummy)
)
))
;-------------------------------------------------------------------------------------------------------------------
(complete 100)
(if #cleanupinst
(
(run
(cat "Delete " #InstallDataDir " ALL QUIET FORCE")
)
)
)
;#########################################################################
; Installation successful!
;#########################################################################
(Message #Install-Done)
(exit (quiet))
)) ;IF #InstallerMode = 0
;#########################################################################
;********************** Deinstallation *****************************************************
(IF (= #InstallerMode "1")(
(Message #App-DeinstallMsg)
(complete 10)
(delete (Tackon #DevsDir "AmithlonUSB.device") (optional FORCE) (INFOS))
(complete 15)
(delete (Tackon #DevsDir "OpenUSB.device") (optional FORCE) (INFOS))
(complete 30)
(delete (Tackon #PrefsDir "AmithlonUSB") (optional FORCE) (INFOS))
(complete 45)
(delete (Tackon #PrefsDir "OpenUSB") (optional FORCE) (INFOS))
(complete 60)
(delete (Tackon #CatalogsDir "deutsch/ArakAttack.catalog") (optional FORCE) (INFOS))
(complete 65)
(delete (Tackon #HelpDir "english/ArakAttack.guide") (optional FORCE) (INFOS))
(delete (Tackon #HelpDir "deutsch/ArakAttack.guide") (optional FORCE) (INFOS))
(complete 75)
(delete (Tackon #CDir "HIDClassPatch") (optional FORCE) (INFOS))
(complete 80)
(STARTUP @app-name
(HELP @startup-help)
(PROMPT (#startupRemove-prompt @app-name))
)
(complete 90)
(if #cleanupinst
(
(run
(cat "Delete " #InstallDataDir " ALL QUIET FORCE")
)
)
)
(complete 100)
(Message #Deinstall-Done)
(exit (QUIET))
(welcome)
;-----------------------------------------------
)) ;IF #InstallerMode = 1
;-----------------------------------------------